import { OnionUtils } from './onion-utils';

export const OnionHandler = {
    //装配数据
    buildData: function(data, type) {
        if(type==undefined || type==null || type==""){
            return data;
        }
        let dataHandler = this[type];
        if(dataHandler!=undefined && dataHandler!=null){
            return dataHandler.buildData(data);
        }else{
            alert("无效的数据装配类型[BuildType]="+type);
        }
    },
    //装配分页查询参数
    queryData: {
        buildData: function(data) {
            //格式合法
            if(this.checkFormat(data)){
                return data;
            }
            //格式不合法，则开始装配
            return {
                "source":"onion-rmc-server",
                "data":data
            }
        },
        checkFormat: function(data){
            //校验数据格式
            return OnionUtils.getType(data)=="object" && data.data!=undefined;
        }
    },
    //装配表单提交数据
    formData:{
        buildData: function(data) {
            //格式合法
            if(this.checkFormat(data)){
                return data;
            }
            //格式不合法，则开始装配
            return {
                "source":"onion-rmc-server",
                "data":data
            }
        },
        checkFormat: function(data){
            //校验数据格式
            return OnionUtils.getType(data)=="object" && data.data!=undefined;
        }
    }
}
